#ifndef _SCAN_H_
#define _SCAN_H_

#include "sat.h"

enum ScanKind { Forward, Backward };

#define SCAN_BLOCK_DIM 256

template <typename T, ScanKind kind>
void scan(T* dev_src, const unsigned int len);

template <typename T>
T * sat_scan(SAT_test_t *t, const unsigned int width, const unsigned int height);

#endif // #ifndef _SCAN_H_